In the context of computer processing, inter-process messaging (IPM) (also referred to as inter-process communication (IPC)) involves the exchange of data among multiple threads of one or more computer processes. In some instances, IPM is implemented using named pipes that have a given size and simple send/receive semantics. The exchange of messages via IPM often involves complex schemes for synchronizing the exchange of data to ensure that events, such as data writes and reads, occur in the correct sequence. In certain IPM techniques, delays are created, for example, if a receiver is busy and the sender has to wait until a receiver is ready to send its data.
While this disclosure is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will be described in detail herein. The drawings may not be to scale. It should be understood, however, that the drawings and detailed description thereto are not intended to limit the disclosure to the particular form disclosed, but to the contrary, the intention is to cover all modifications, equivalents, and alternatives falling within the spirit and scope of the present disclosure as defined by the appended claims.